home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / newsgrp / group98a.txt / 000149_icon-group-sender _Fri Mar 27 17:01:09 1998.msg < prev    next >
Internet Message Format  |  2000-09-20  |  2KB

  1. Return-Path: <icon-group-sender>
  2. Received: from kingfisher.CS.Arizona.EDU (kingfisher.CS.Arizona.EDU [192.12.69.239])
  3.     by baskerville.CS.Arizona.EDU (8.8.8/8.8.7) with SMTP id RAA16084
  4.     for <icon-group-addresses@baskerville.CS.Arizona.EDU>; Fri, 27 Mar 1998 17:01:08 -0700 (MST)
  5. Received: by kingfisher.CS.Arizona.EDU (5.65v4.0/1.1.8.2/08Nov94-0446PM)
  6.     id AA32062; Fri, 27 Mar 1998 17:01:07 -0700
  7. X-Sender: clodius@nis-pop.lanl.gov
  8. Message-Id: <v04003a03b141ae238dd4@[128.165.58.113]>
  9. Mime-Version: 1.0
  10. Content-Type: text/plain; charset="us-ascii"
  11. Date: Fri, 27 Mar 1998 13:49:55 -0600
  12. To: icon-group@optima.CS.Arizona.EDU
  13. From: "William B. Clodius" <wclodius@lanl.gov>
  14. Subject: Icon and recursion
  15. Errors-To: icon-group-errors@optima.CS.Arizona.EDU
  16. Status: RO
  17. Content-Length: 1618
  18.  
  19. Hi:
  20.  
  21. I have been trying to learn a little of Icon from information available
  22. over the net, and have been having trouble trying to transcribe some code
  23. from other languages to Icon. I have, so far, not had any problems
  24. translating procedural style code. The troublesome code has been primarilly
  25. Lisp or Lisp style benchmarks that rely heavily on recursion, i.e. the Tak
  26. benchmark and the change benchmark
  27. (http://www.webcom.com/nazgul/change.html). The Tak bencghmark appears to
  28. exhaust the internal stack before printing any output. Given the nature of
  29. the Tak benchmark I may not be able to do something to make it work. The
  30. Change benchmark, gives incorrect output and inserted write statements
  31. suggest an order of execution that I do not understand at all.
  32.  
  33. As a result I have the following questions:
  34.  
  35. 1. What are the semantics of Icon's argument passing mechanism, i.e., by
  36. value, by reference, copy-in/copy-out, no modifiable aliasing, by name,
  37. lazy, eager?
  38.  
  39. 2. What is the meaning of the "local" statement, i.e., does it ensure that
  40. a value is saved from call to call?
  41.  
  42. 3. Can Icon handle recursion, and are there any tricks I should be aware of
  43. either to make recursion work or translate recursive code into a form Icon
  44. can handle? (Note Tak and Change are not tail recursive.)
  45.  
  46. 4. Is there example code available which can give more insight into
  47. iterators and their semantics?
  48.  
  49.  William B. Clodius            Phone: (505) 665-9370
  50.  Los Alamos Natl. Lab., NIS-2  FAX: (505) 667-3815
  51.  PO Box 1663, MS-C323          Group Off.: 505/667-3422 or 667-5127
  52.  Los Alamos, NM 87545          email: wclodius@lanl.gov
  53.  
  54.  
  55.